/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package pessoas.strategyFontesImportacao;

import java.util.ArrayList;
import managementcollaborators.Collaborator;
import pessoas.interfaces.IFonteImportacao;
import pessoas.interfaces.IIteratorImportacao;
import pessoas.iteratorImportacao.ManagementCollaboratorsIterator;
import pessoas.model.Contato;

/**
 *
 * @author Bush
 */
public class ManagementCollaborators implements IFonteImportacao{
    private Collaborator contatos[];
    private int numLinhas;

    public ManagementCollaborators() {
        contatos = managementcollaborators.ManagementCollaboratorsSystem.getCollaborators();
        numLinhas = 0;
    }
    
    public IIteratorImportacao createIterator() {
        return new ManagementCollaboratorsIterator(contatos);
    }
    
    @Override
    public ArrayList<Contato> contatosImportados() {
        ArrayList<Contato> c = new ArrayList<Contato>();
        IIteratorImportacao i = createIterator();
        while (i.existeProximo()) {
            Contato contato = new Contato(null, null, null, null, null);
            Collaborator col = (Collaborator) i.proximo();
            contato.setNome(col.getFirstName());
            contato.setSobrenome(col.getFirstName()+" "+col.getMiddleName());
            contato.setTelefone(col.getPhone().replace(" ", ""));
            c.add(contato);
            numLinhas++;
        }
        return c;
    }

    @Override
    public void escolhaArquivo() {
        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    }

    @Override
    public int numeroLinhas() {
        return numLinhas;
    }

    @Override
    public int tamanhoArquivo() {
        return managementcollaborators.ManagementCollaboratorsSystem.getCollaborators().length;
    }
    
}
